#ifndef IRENDERBOX_H
#define IRENDERBOX_H

#include "Config/Export.h"
#include "Core/IDrawable.h"
#include "GL/glew.h"

namespace blue {

enum rdr_param_t
{
};

class SHARED IRenderBox : public IDrawable
{
    public:

        virtual ~IRenderBox() {}

        virtual void initialize(GLenum mode,  GLsizeiptr sizei = 0) = 0;

        virtual void addBuffer(GLenum type, const void *data, GLsizeiptr size, int count) = 0;

	virtual void update(GLenum type, const void *data, GLsizeiptr size) = 0;

        virtual void setParam(rdr_param_t param, bool state) = 0;

        virtual void draw() = 0;

};

}

#endif
